This application claims the priority of German patent document 195 19 732.1, filed Jun. 2, 1995, the disclosure of which is expressly incorporated by reference herein.
This invention relates to an apparatus for controlling the attitude and position of a three axis stabilized spacecraft.
An apparatus and a process of this type are known from the article "Advanced Attitude and Orbit Control Concepts for 3-Axis-Stabilized Communication and Application Satellites" by M. Surauer, H. Bittner, W. Fichter and H. D. Fischer, IFAC Symposia Series 1993, No. 12.: Automatic Control in Aerospace (1992). FIG. 6.2-1 of that article illustrates the structure of an attitude control apparatus for a spacecraft, that has a control unit which processes measuring signals on the input side and emits control unit signals on the output side. Both the measuring and control unit signals are axis-related; that is, they are related to the three principal axes of the system of coordinates x, y, z fixedly assigned to the spacecraft. The axis-related control unit signals are supplied to a conversion unit called an "actuator command module" which, in turn, outputs a number of drive signals for attitude control nozzles, for generating positive and negative moments about the three principal axes as well as positive and negative forces along these principal axes.
Within the conversion unit, the control unit signals are first supplied to a delimiter and then to a total of three modulators which are also axis-related. The latter generate axis-related digital pulse sequences whose pulses may have the values 0 or .+-.1. In a nozzle selection unit which follows, these pulse sequences are converted into a number of non-negative control signals for the nozzles or the attitude control engines. (In the actual embodiment, four nozzles are provided.) This takes place by way of a table drive which receives as inputs all 27 possible combinations of the modulator output signals and, for this purpose, in each case, supplies fixed combinations of digital, nozzle-related drive signals, as indicated in Table 5.2.2 of the article.
However, this table drive has the disadvantage that a single signal triplet on the modulator output for the conversion requires two successive time intervals with a possibly different nozzle drive. In view of the permissible minimum pulse duration of the nozzles, this means a fifty percent reduction of the control unit sensitivity which is possible per se. In addition, the fact that three axis-related modulators are used constitutes a certain lack of flexibility because it is not possible in this manner to carry out a precise coordination of the features of the modulation process with the requirements of the individual nozzles or attitude control engines, such as may be desirable under certain circumstances.
It is an object of the invention to provide an apparatus of the initially mentioned type, which provides improved flexibility and control unit sensitivity.
In the initially mentioned apparatus described in the above-mentioned article, a process is used for generating drive signals for the nozzles or attitude control engines which is based on axis-related control unit signals and operates according to a rule which requires the application of a matrix decomposition (using the method of the Singular Value Decomposition (SVD), which is known per se) to a nozzle matrix. The latter, in turn, contains as elements the momentum and force vectors which can be generated by the nozzle or attitude control engines. This technique, which is explained in detail in Chapter 5.2.1 of the article, particularly under the partial heading "Torque Generation Logic" leads directly to the above-mentioned table drive. It takes into account the fact that, before generation of the nozzle-related drive signals, the axis-related control unit signals are supplied to the three axis-related modulators, so that the actual computation of the drive signals is based on the discrete signal triplet at the modulator outputs (that is, the modulator output vector). Accordingly, the axis-related modulator output vector consisting of discrete components occurs in the rule of computing resulting from the application of the above-mentioned matrix decomposition.
According to the invention, this process is now modified so as to eliminate the above-mentioned disadvantages. That is, in the process according to the invention, a modulator output vector is no longer used to determine the drive vector (consisting of the drive signals as the components). Rather, the vector of the axis-related control unit signals is used directly; for this purpose, it is multiplied with the drive matrix resulting from the SVD matrix decomposition.
In the known attitude control apparatus according to the initially cited article, the nozzles are always operated in a pulsed manner, as a result of the use of modulators addressed there. In contrast, according to another aspect of the invention, continuously controllable nozzles or attitude control engines can also be used, and the drive signals are used directly to actuate the respective thrust control mechanism of the nozzles or attitude control engines fixedly assigned to these drive signals.
Nozzles are those attitude control engines which operate with chemical fuels and are constructed predominantly for a pulsed operation, depending on the drive, with valves thereof being completely open or closed. However, such valves may also be constructed such that, according to a predetermined characteristic curve, they can take up continuously variable intermediate positions, and thus are also suitable for continuous drives. Furthermore, electric attitude control engines, such as ion engines, can also be used, in which the generated thrust is continuously variable.
The process for determining the drive signals for pulsed or continuously drivable nozzles arranged on a satellite or spacecraft as described below, has the following characteristics: PA1 The number of drive signals is identical to the minimum number n.sub.D of the nozzles; PA1 each of the n.sub.D drive signals is assigned precisely to a nozzle of the nozzle set (minimum circumference n.sub.D); PA1 the drive signals are non-negative, reflecting the fact that the thrust direction of a nozzle cannot be reversed; PA1 the computation of the drive signals takes place from n.sub.A axis-related command signals by means of (i) a matrix B of the dimension n.sub.D .times.n.sub.A, and (ii) a vector u2 of the dimension n.sub.D according to the description mentioned below; the parameters B and u2 required by the computing process are stored in the spacecraft computer and can be overwritten from the ground, or several sets of these parameters can be stored, for example, for the following cases: Change-over of the drive signals to redundant nozzles with other momentum (and force) vectors, or taking into account known changes of the spacecraft gravity center or of the thrust level of individual nozzles; PA1 the minimum number n.sub.D of nozzles is larger by one than the number n.sub.A of the axis-related actuating commands to be converted which correspond to the moments to be exercised about the three principal axes of the satellite. (In addition, forces along these principal axes may also be commanded; thus, n.sub.A &lt;6.) PA1 the geometrical arrangement of the nozzles on the satellite or spacecraft permits the generating of positive and negative moments about up to three principal axes as well as possibly of positive and negative forces in the direction of up to three principal axes; PA1 for the special case n.sub.D .ltoreq.4 (additional feature), the following applies: the largest force components, of at least n.sub.D nozzles point in the same direction, which is the preferred direction for the thrust in the case of path correction maneuvers and the simultaneous generating of moments about n.sub.A =n.sub.D -1 axes. PA1 Z.sub.ges : combined moment and force vector, PA1 t: mean moment exercised by the nozzles, PA1 f: mean force exercised by the nozzles, PA1 f.sub.i : force vector of the nozzle i, PA1 r.sub.i : radius vector of the nozzle i, relative to the mass center PA1 r.sub.i f.sub.i =r.sub.i .times.f.sub.i. PA1 k.sub.i : drive signal of the nozzle i.
In the case of pulsed nozzles, each of the n.sub.D drive signals is supplied precisely to a modulation process or modulator assigned to the corresponding nozzle;
However, the drive process according to the invention uses an arrangement of pulsed or continuously drivable nozzles for generating torques or moments and forces on satellites or spacecraft which is characterized by the following features:
For attitude (and position) control of satellites or spacecraft by means of nozzles, normally control unit signals e are generated from measuring signals by means of suitable algorithms. The control unit signals e, multiplied by a desired moment matrix T.sub.cmd (and force matrix F.sub.cmd), result in command vectors t.sub.cmd (and f.sub.cmd which, in turn, correspond to the moments (and forces) to be generated by the nozzles.
These axis-related command signals are to be converted into nozzle-related, non-negative drive signals k which are proportional to the thrust level of the respective nozzle to be generated on the average in a momentary manner.
The following relationship exists between the drive signals k for the nozzles and the forces and moments generated by them: ##EQU1## or combined: EQU Z.sub.ges : =B.sub.ges .multidot.k
with
A drive vector k is now sought which makes all elements of z.sub.ges or a selected partial amount z thereof as nearly as possible identical to a predetermined command vector z.sub.cmd : EQU z.sub.j =z.sub.cmdj, j=1 . . . n.sub.A, n.sub.A&lt; 6 (2)
Herein, z.sub.cmd can be represented as the product of the n.sub.A -element control unit output signal e with a desired moment/force matrix B.sub.cmd. As a result, equation (2) can be written as follows: EQU B.sub.cmd e=B k (3)
In this case, either B=B.sub.ges, or B results from B.sub.ges by eliminating the lines corresponding to those elements of Z.sub.ges for which no desired value is indicated.
In the case of satellites and spacecraft, generally a desired value is given for the moments about all axes in order to avoid uncontrolled rotations. Normally, therefore n.sub.A&lt; 3 applies. The marginal condition EQU k.sub.i &lt;0, i=1 . . . n.sub.D ( 4)
applies to the elements of k in (3). This corresponds to the fact that the nozzles can generate thrust in only one direction.
The minimal number of nozzles for which the equations (3) and (4) can be met at all is EQU n.sub.D =n.sub.A +1 (5)
The process according to the invention generates exactly n.sub.D drive signals. It uses a matrix decomposition method (Singular Value Decomposition=SVD, known, for example, from IEEE Transactions on Automatic Control, Vol. AC-25, No. 2, April 1980, Pages 164 to 176) by means of which the nozzle matrix B in (3) can be represented as ##EQU2##
For the case described here (n.sub.D =n.sub.A +1), U2 is a vector of the dimension n.sub.D, in the following called u2. If u2 is definite (that is, it contains only components of the same preceding sign), the drive vector k will be determined as follows: ##EQU3##
The definiteness of the vector u2 in equation (6) and (7) is the only demand on the nozzle matrix B so that the process described here can be used. (Note that the nozzle set is capable of generating positive and negative moments as well as possibly positive and negative forces along the respective required principal axes of the spacecraft or satellite.) In particular, the process described here requires no symmetry characteristics of the nozzle set (for example, that pairs of nozzles must in each case generate opposite moments of the same amount about a principal axis).
On the other hand, if u2 is non-definite, there can be no process which would be suitable for controlling nozzle sets of the type used here, that is, which could meet requirements (2) and (4).
The process is preferably implemented in the satellite or spacecraft computer where the matrix B.sup.I as well as the vector u2 from equation (7) are also stored.
The parameters B.sup.I and u2 can be overwritten from the ground by telecommand in order to be adapted to changes of the nozzle matrix B. These may occur, for example, by:
a change in the center of mass in the operation;
a change of the thrust level of the nozzles; or a change-over to nozzles with a different installation geometry.
In this case, equation (7b) has the result that all drive signals are not negative. The drive law according to equation (7) therefore meets the requirements (2) and (4).
The suggested process generates a number n.sub.D of drive signals which are larger by one than the number of the axis-related moment and force commands n.sub.A. Thus, in the simplest case, the number of nozzles used is equal to n.sub.D. However, more than n.sub.D nozzles can also be used, for example, in the following cases:
To increase the moment level or thrust level, several nozzles with a similar moment vector and force vector can be combined assigned to one drive signal k.sub.i. In this case, in equation (3) in the corresponding column of the matrix B, the mean values of the relevant elements of the moment (and force) vectors of the combined nozzles must be used;
To increase the redundancy, elements of the vector k can optionally be used for driving different nozzles with a similar moment vector and force vector, or the vector k can be used for driving another set of nozzles with, on the whole, similar characteristics. In both cases, as required, the values of the parameters B.sup.I and u2 must be adapted by way of telecommands or must be replaced by values computed for the respective set of nozzles beforehand and stored in the spacecraft computer.
When pulsed nozzles are used, each of the determined control signals is supplied precisely to a modulator. The modulators may be digital (implemented, for example, in the spacecraft computer) or may be analog. The output signal of each modulator is appropriately used for actuating the valve (the valves) of the nozzle (group of nozzles with a similar momentum vector and force vector) which is fixedly assigned to this modulator.
When continuously controllable nozzles are used, each of the determined drive signals will appropriately be used to actuate the thrust control mechanism of the nozzle (or group of nozzles with a similar momentum and force vector) fixedly assigned to this drive signal.
If the largest force components of at least n.sub.D&lt; 4 nozzles point in the same direction, a constant thrust may be exercised in this direction, with the simultaneous generating of commanded moments about n.sub.D -1 axes.
For n.sub.D =4, for example, path correction maneuvers are possible with a simultaneous attitude control.
For this special case, the computing rule of the scalar c in equation (7b) can be expanded as follows:
Case a), valid outside of thrust phases or during thrust phases if c.sub.m &lt;c.sub.o (c.sub.m see case b) ##EQU4##
Case b), valid during thrust phases, if c.sub.m &gt;c.sub.o : ##EQU5##
In case a), the indefiniteness of the equation system (1) is utilized in order to meet the requirements (2) and (4) with minimal energy expenditures (the drive value zero is assigned to at least one nozzle); in case b), this takes place with maximal energy expenditures (the maximal drive value is assigned to at least one nozzle).
Other objects, advantages and novel features of the present invention will become apparent from the following detailed description of the invention when considered in conjunction with the accompanying drawings.